A network access server (NAS) box typically provides dial-up internet services to users of the internet. A user dials into the access server box in order to be connected to the internet. The access server box transmits and receives data through the public switched telephone network (PSTN) over channelized transmission facilities, such as a BRI, T1, E1, T3, SONET or SDH lines.
Multi-link PPP (MLP) is a method for obtaining higher transmission bandwidth by sending data through separate serial channels using a point-to-point protocol (PPP) and then reassembling the data at a termination point of the serial channels. MLP is often applied in integrated services data network (ISDN) which use multiple B channels. Another application of MLP is using multiple modem connections in parallel to obtain greater bandwidth than that available from a single modem.
An MLP session does not require a high level of resources from the NAS or router box for support so long as all the PPP connections for the separate serial channels of the MLP session terminate on the same router box. However, a large NAS will typically be constructed from multiple remote access concentrators (RACs) each having its own transmission facilities connecting it to the PSTN. An example of an RAC is a network router with dial-in facilities for interfacing with the PSTN. If the multiple dial-up connections are terminated on different RACs serving the same NAS, then a multi-chassis multi-link PPP (MMP) is required to support the multiple link connection. In the case of an MMP session, the multiple PPP sessions of the MMP must be tunneled from different RACs to a single RAC in the NAS in order to terminate the MMP session.
MMP sessions can be expensive in terms of router resources and support for MMP can present a serious problem when scaled to large NAS systems having a large number of RACs. The MMP support problem, in some cases, drives network design to use a single large central RAC for each NAS system. However, the cost advantages to being able to scale many small RAC blocks in order to obtain a larger system are then lost.
Internet service providers (ISPs) typically have a large pool of customers, where only a fraction of the total pool is actively using the communications infrastructure of the ISP at any given time. ISPs therefore typically oversubscribe their communications equipment (i.e. modems, ISDN lines, T1/E1 facilities) in order to take advantage of the fact that a smaller proportion of their total users are active during any given period. The equipment which serves subscribers is therefore structured to have a concentration ratio which represents the proportion of subscriber connections to transmission facilities. The concentration ratio is selected so as to cost-effectively provide a reasonable quality of service to the subscribers with the least number of transmission facilities. Thus, the concentration rate can be relatively high for a pool of low usage users, but must be much lower for a pool of high usage users.
In the course of terminating calls to a given NAS system, a switch serving the NAS system will typically attempt to distribute the terminating calls as uniformly as possible across the multiple transmission facilities (i.e. T1/E1 facilities) connected to the NAS system on a next available basis. As a result, in a multi-chassis NAS, the probability of the multiple serial channels for an MMP session being distributed across transmission facilities serving different chassis of the NAS can become quite high.
In addition, the bulk of the pool of customers will not set up a multi-link session. Multi-link calls typically originate from a sub-set of customers who have specialized hardware needed to support multi-link connections and have paid for multi-link service.
Signaling System 7 (SS7) is an out-of-band common channel signaling system that is typically used to perform the signaling involved in setting up calls between switches in the publicly switched telephone network (PSTN). The SS7 protocol messages include the originating or source telephone number for a call, the terminating or destination telephone number as well as information regarding the telephone circuits to be used by the call. For instance, a phone call will originate and send out a request to terminate the call to a destination. The switch receiving the origination request will send an SS7 message into the PSTN requesting routing and termination on the switch serving the destination. The PSTN will determine the connection between the originating and terminating switches including sending an SS7 message requesting a timeslot and facility for the call to terminate on the destination switch. Other common channel signaling (CCS) protocols exist which are used for call routing.
FIG. 1 illustrates an example of a multi-chassis multi-link session in a conventional network architecture 100. A customer premise equipment (CPE) 110 is served by switch 120 which is part of the PSTN 10 and which communicates with PSTN 10 through trunk line 122. An IP or ATM network 150 is served by NAS 140 which consists of multiple RACs 142 and 146 which communicate via intra-chassis communication link 144. NAS 140 is connected to switch 130 of the PSTN 10 via multiple T1 facilities 132-136. The ellipses between T1 facility 132 and T1 facility 136 indicate that a large number of T1 facilities may be used to connect a NAS to the PSTN 10.
An example of call establishment for a multi-link connection in the architecture 100 will now be described. Multi-link calls can take a variety of forms including an ISDN basic rate interface (BRI) having a pair of B channels having the same source identifier, i.e. ISDN number, or an asynchronous multi-link originating from modems having different source phone numbers. The function of the conventional architecture of FIG. 1 is discussed in the context of an ISDN BRI connection, but the call establishment scenario shown is also relevant to other types of multi-link connections.
Typically, a multi-link call will originate with a first link and then add a second link as needed. A first data link connection originates on CPE 110 which sends an I.451/Q.931 call setup request message over a D channel to switch 120. The set-up requests a first B channel B1 connected to switch 120 and designates a destination address in EP or ATM network 150 as the destination of the call. Switch 120 determines that the destination of the call is served by another switch in PSTN 10 and identifies the first exchange in the route through PSTN 10 toward the destination switch 130 serving NAS 140. NAS 120 then sends an initial address SS7 message to the first exchange in PSTN 10 which contains the ISDN number of the destination party (i.e. the destination address in IP or ATM network 150), the type of connection (e.g. 64 Kbps), and the identity of the selected physical circuit to the first exchange (i.e. a channel on T1 facility 122).
Exchanges within PSTN 10 then route the call to the terminating NAS 140 based upon the ISDN number of the destination address in IP or ATM network 150. At each intermediate exchange in PSTN 10, the incoming SS7 call set-up message is received and analyzed. Based upon the destination address of the call and other routing information, the intermediate exchange makes a routing decision, selects a link to the next exchange, sets up a connection between the incoming and outgoing links and forwards the SS7 call set-up message to the next exchange. This process continues until the SS7 call set-up message arrives at the terminating switch 130 connected to NAS 140.
Switch 130 will select an idle channel on one of the T1 facilities 132-136 serving NAS 140 as the circuit for the connection to NAS 140. The T1 facility and timeslot will typically be selected based upon a distribution algorithm. Examples of the distribution algorithm are round-robin, least-recently-used, first-in-first-out or a uniform distribution algorithm. In the present example, a channel on T1 facility 132 is selected for the first B channel connection B1 which terminates on RAC 142 of NAS 140.
NAS 140 identifies the destination address in IP or ATM network 150 as the called party based upon the ISDN number and forwards a set-up message to the destination address in network 150. At this point, a first PPP session has been established in RAC 142 for the first B channel B1 from CPE 110. An ALERT message will be sent from the first PPP session in NAS 140 through switch 130 and PSTN 10 to switch 120. Switch 120 then returns an address complete message to CPE 110 which acknowledges that the PPP session for the first B channel connection B1 has been established.
The set-up of a PPP session for a second B channel B2 for a multi-link session connection to network 150 proceeds in much the same manner as that described above for the first B channel B1. However, due to the distribution algorithm in the final exchange of PSTN 10, a channel on a different T1 facility will frequently be selected for the B2 channel. In the example shown, T1 facility 136 is selected for the B2 channel of the multi-link connection and a second PPP session is established in RAC 146. However, the PPP session for the first B channel B1 from CPE 110 has been established in RAC 142. Thus, the PPP session for the second B channel B2 must be tunneled from RAC 146 across intra-chassis communication link 144 to RAC 142 in order to establish the multi-link protocol session to serve the connection to CPE 150.
Thus, the multi-link session described above is an MMP session which requires resources on both RAC 142 and RAC 146 as well as intra-chassis communication link 144 when the multi-link connection could be more efficiently serviced through an MLP session in RAC 142 alone. This results in inefficient use of facilities which requires a lower concentration ratio in the structure of NAS 140 in order to provide an acceptable level of service quality to the subscribers served by NAS 140. Consequently, the cost for providing service to users is higher than necessary.
Accordingly, a need remains for more efficient use of facilities in NASs in supporting MLP sessions.
An embodiment of a call control system for routing multi-link connections, according to the present invention, is composed of a communications network including first and second switches. The first switch is configured to support a multi-link connection with an originating client and requests a connection by sending a connection set-up message into the communications network in response to a request from the originating client for each link of the multi-link connection. The connection set-up message identifies the originating client and a terminating client. A server is coupled to the second switch of the communications network and is configured to support a multi-link connection with the terminating client. The server has multiple communication devices where each communication device is coupled to the second switch through a corresponding transmission facility. A routing processor coupled to the communications network is configured to store a data entry identifying the originating client as a potential source of a multi-link connection. The routing processor receives each connection setup request from the first switch, and, responsive to each connection set-up request from the originating client, searches for the data entry for the originating client. If the data entry is found, the routing processor directs routing of all connections from the originating client to the terminating client to a single one of the communication devices of the server.